package com.infitecs.eyas.nature.dao;

import com.infitecs.eyas.nature.model.Help;
import com.infitecs.eyas.nature.model.Nature;
import com.infitecs.krill.mybatis.annotation.mybatisRepository;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * Created by Demon on 2015/5/6.
 */
@mybatisRepository
public interface NatureDao {
    void updateAltitude(@Param("altitude")double altitude,@Param("powerId")int powerId); //海拔高度

    void updateAnnualAverageTemperature(@Param("annualAverageTemperature")double annualAverageTemperature,@Param("powerId")int powerId); //年平均气温

    void updateLocalPressure(@Param("localPressure")double localPressure,@Param("powerId")int powerId); //当地大气压 Kpa

    void updateLocalPressureOther(@Param("localPressureOther")double localPressureOther,@Param("powerId")int powerId); //当地大气压mmHg

    void updateOutdoorCalculatedTemperature(@Param("outdoorCalculatedTemperature")double outdoorCalculatedTemperature,@Param("powerId")int powerId); //采暖室外计算温度

    void updateSummerOutdoorCalculateTemperature(@Param("summerOutdoorCalculateTemperature")double summerOutdoorCalculateTemperature,@Param("powerId")int powerId); //采暖室外计算温度

    void updateAnnualAverageRelativeHumidity(@Param("annualAverageRelativeHumidity")double annualAverageRelativeHumidity,@Param("powerId")int powerId); //年平均相对湿度

    void updateMinDailyAverageTemperature(@Param("minDailyAverageTemperature")double minDailyAverageTemperature,@Param("powerId")int powerId); //最低日平均温度

    void updateAnnualAverageAirMoisture(@Param("annualAverageAirMoisture")double annualAverageAirMoisture,@Param("powerId")int powerId); //年平均空气含湿量

    void updateLocalDensityMoistAir(@Param("localDensityMoistAir")double localDensityMoistAir,@Param("powerId")int powerId); //当地湿空气密度

    Nature getNatureByPowerId(@Param("powerId")int powerId);

    Nature getNatureByPowerCaseId(@Param("powerCaseId")int powerCaseId);

    Help getHelp(@Param("cityName")String cityName);

    List<Help> getAllDictNa();

    void addNature(Nature nature);

    void updateNature(Nature nature);
}